def BuscarPalabrasReservadas(archivo):
    f=open(archivo, "r")
    linea=f.readline()
    palabras=set()
    while True:
        if not linea: break
        #Buscar aquellas palabras que se encuentren en mayuscula y no esten en comentario
        i=0
        while i<len(linea) and linea[i]!='#':
            if linea[i].isupper() or linea[i].isdigit():
                #continuar hasta abarcar toda la palabra
                j=i
                while (linea[j].isupper() or linea[j]=='_' or linea[j].isdigit()) and j<len(linea):
                    j=j+1
                palabras.add(linea[i:j])
                i=j
            else:
                i=i+1
        linea=f.readline()
    p = list(palabras)
    p.sort()
    return p

def CrearDiccionario(lista, archivo):
    f=open(archivo, "w")
    f.write("reserved = { ")
    for l in lista:
        f.write("'"+l.lower()+"':'"+l+"',\n\t")
    f.write("\n}")
    f.close()




lista = BuscarPalabrasReservadas('gramatica.py')
CrearDiccionario(lista, 'diccionario.txt')
